#!/usr/bin/python
#coding=utf-8
'''
Crea l'albero contenente i dati per lo studio della statistica poissoniana
e per la stima dell'errore di misura del fotodiodo
---
---
Crea un albero contenente due rami: vf, counts
'''

from __future__ import division, print_function
from ROOT import TTree, TFile, AddressOf
from myanalisis import my_double

'''
Definizione dei parametri e inizializzazione degli oggetti
'''
ofile_name = 'vf_count.root'
ofile = TFile(ofile_name, 'recreate')
tree = TTree('vf_count', 'Conteggi e voltaggio del fododiodo a specchio coperto')
vf = my_double()
count = my_double()
time = my_double()
tree.Branch('vf', AddressOf(vf, 'value'), 'value/D')
tree.Branch('count', AddressOf(count, 'value'), 'value/D')
tree.Branch('time', AddressOf(time, 'value'), 'value/D')

'''
Estrae i valori dal file e li salva nell'albero
'''
with open('StatisticaPoiss_D6_PMT460V_MaggioreStatistica') as ifile:
    for t, line in enumerate(ifile):
        vf.value = float(line.split()[1])
        count.value = float(line.split()[9])
        time.value = float(line.split()[0])
        tree.Fill()

ofile.Write()
ofile.Close()
